iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 19
0

替專案裝上Husky

  1. mkdir 資料夾名建立一個新資料夾,這邊名為husky-sample

  2. 接著cd進去後git init,為的是低成本模擬出一個專案可以被Commit和Push的情況,

    • 如下圖:
    • 透過ll -a檢查,這時候你的資料夾裡頭應該會有這些:
  3. 建立一個package.json檔,直接npm init,會引導你,但這些細節我不太在乎,所以我不斷案Enter直到創建完成。

    • 像這樣:
  4. 好了之後會多出一個package.json檔。

    • 像這樣:
  5. 接著重頭戲拉,安裝Husky ~ (撒花

    • npm install husky --save-dev
  6. 此時package.json裡面已經有一點東西了

    • cat package.json

用Husky在Commit時做點事情

  1. 用一個喜歡的編輯器打開那個檔案,貼上這段:
"husky": {
    "hooks": {
      "pre-commit": "npm build",
    }
}
  • 這段意思是,建立了一個Husky物件,在Hooks這邊的Pre-commit階段,要執行npm build
  1. 嘗試commit一下,是會通過的

  2. 接著試試會被阻止的Case

  • 幫我把第16行改成npm test
  • 同時注意第7行最後讓他Exit 1,之前文章中常提到,Exit 1多半不是好事,這邊也一樣,Exit 1會使Commit流程被終止,同時可以改點Echo出來的東西能更有感覺。
  • 會看到Echo的錯誤訊息被印出來,Commit失敗了,之後就能在script裡面寫一些指令,或者呼叫其他份script檔。

有事要忙了,明天講怎麼把這件事散發到團隊上 :D


上一篇
[D18]:關於 Git Hook 的 Husky
下一篇
[D20] : 將Husky的設定分享給團隊
系列文
Re : 從懶開始的自動化生活30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言